home *** CD-ROM | disk | FTP | other *** search
/ BBS in a Box 7 / BBS in a Box - Macintosh - Volume VII (BBS in a Box) (January 1993).iso / Files / DA / P / PCalculator.cpt / CalcDA sources / CalcDA.h < prev    next >
Text File  |  1990-07-05  |  1KB  |  82 lines

  1. /*
  2.  * CalcDA_Modes.c for the Programmer's Calculator project 
  3.  * 
  4.  * Copyright 1990, Peter Ohler 
  5.  * 
  6.  * All Rights Reserved 
  7.  */
  8.  
  9. /*
  10.  * ***************************************************************************
  11.  * typedefs 
  12.  */
  13. typedef void    *Pntr;
  14.  
  15. typedef unsigned long    uLong;
  16.  
  17. typedef int    (*IntFunc)();
  18. typedef double    (*DoubleFunc)();
  19.  
  20. typedef struct {
  21.     char    name[4];
  22.     union {
  23.         long    lv;
  24.         double    dv;
  25.     } value;
  26. } Register;
  27.  
  28. typedef struct {
  29.     int    pos;
  30.     int    len;
  31. } Stack;
  32.  
  33. /*
  34.  * ***************************************************************************
  35.  * global variables 
  36.  */
  37. extern WindowPtr    CalcWindow;
  38. extern WindowPtr    AsciiWindow;
  39.  
  40. extern Rect        display;
  41. extern Rect        xDisplay;
  42. extern Rect        reg2Display;
  43. extern Rect        statDisplay;
  44.  
  45. extern Register        xReg;
  46. extern Register        yReg[];
  47.  
  48. extern char        xRegText[];
  49. extern char        reg2Text[];
  50.  
  51. #define RADIANS    0
  52. #define DEGREES    1
  53. extern Stack        angleStack;
  54. extern char        angleNames[2][8];
  55.  
  56. #define DECIMAL    0
  57. #define HEX    1
  58. #define OCTAL    2
  59. #define BINARY    3
  60. extern Stack        baseStack;
  61. extern char        baseNames[4][12];
  62.  
  63. #define SCIENTIFIC    0
  64. #define FIXED        1
  65. extern Stack        noteStack;
  66. extern char        noteNames[2][11];
  67.  
  68. #define INTEGER    0
  69. #define REAL    1
  70. extern Stack        typeStack;
  71. extern char        typeNames[2][8];
  72.  
  73. #define SIGNED        0
  74. #define UNSIGNED    1
  75. extern Stack        signStack;
  76. extern char        signNames[2][9];
  77.  
  78. extern IntFunc        funcPending[];
  79.  
  80. extern int        newXValueTag;
  81.  
  82.